package com.screen.screendisplay.mapper.electric;

import com.screen.screendisplay.entity.electric.ElectricSafetyenvDensityRt;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * <p>
 * 火电安全环保浓度实时数据表 Mapper 接口
 * </p>
 *
 * @author xuesong
 * @since 2025-10-12
 */
public interface ElectricSafetyenvDensityRtMapper extends BaseMapper<ElectricSafetyenvDensityRt> {

    /**
     * 根据年份查询浓度实时数据
     * @param year 年份
     * @return 浓度实时数据列表
     */
    List<ElectricSafetyenvDensityRt> selectByYear(@Param("year") Integer year);

    /**
     * 根据年份和月份查询浓度实时数据
     * @param year 年份
     * @param month 月份
     * @return 浓度实时数据列表
     */
    List<ElectricSafetyenvDensityRt> selectByYearAndMonth(@Param("year") Integer year, @Param("month") Integer month);

    /**
     * 根据电厂编码查询实时浓度数据
     * @param plantCode 电厂编码
     * @return 浓度实时数据列表
     */
    List<ElectricSafetyenvDensityRt> selectByPlantCode(@Param("plantCode") String plantCode);

    /**
     * 根据年月日查询浓度实时数据
     * @param year 年份
     * @param month 月份
     * @param day 日期
     * @return 浓度实时数据列表
     */
    List<ElectricSafetyenvDensityRt> selectByYearMonthDay(@Param("year") Integer year, @Param("month") Integer month, @Param("day") Integer day);

    /**
     * 查询最新的浓度实时数据
     * @param plantCode 电厂编码
     * @return 最新的浓度实时数据
     */
    ElectricSafetyenvDensityRt selectLatestByPlantCode(@Param("plantCode") String plantCode);
}

